package com.example.flashsales.service;

import com.example.flashsales.entity.dto.RefundDetailsDto;
import com.example.flashsales.entity.dto.RefundDto;
import com.example.flashsales.entity.vo.ReturnOrderVo;

import java.util.List;
import java.util.Map;

public interface RefundService {
    //增加一条退款纪录
    String refund(RefundDto refundDto, List<RefundDetailsDto> refundDetailsDtoList);

    //查看某条的退款
    ReturnOrderVo viewRefundDetails(long refundId);

    //查看所有的退款
    List<ReturnOrderVo> viewAllRefund(int page,int num);

    //按类型查看退款
    List<ReturnOrderVo> viewRefundByState(int state,int page,int num);

    //用户查看自己的所有退款订单
    List<ReturnOrderVo> viewAllRefundByUser(long userId);

    //用户按状态查看
    List<ReturnOrderVo> viewAllRefundByUserAndState(long userId,long state);

    //修改退款订单细节状态
    boolean updateRefundState(int state,long detailsId,int adminId);

    //取消退款订单
    int cancelRefundOrder(Long refundId);








}
